home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Linux Cubed Series 7: Sunsite
/
Linux Cubed Series 7 - Sunsite Vol 1.iso
/
system
/
admin
/
linuxcon.000
/
linuxcon
/
linuxconf-1.6
/
xconf
/
components.h
< prev
next >
Wrap
C/C++ Source or Header
|
1996-07-31
|
2KB
|
79 lines
#pragma interface
#ifndef COMPONENTS_H
#define COMPONENTS_H
/*
A COMPONENT hold thoses informations
A manufacturer ID
A product model ID
A pointer to a part of a Xconfig applicable to this component.
A pointer to a notice
A pointer to an action script
*/
#ifndef SECTION_H
#include "section.h"
#endif
class NOTICE{
char **tbstr;
int nbstr;
int maxstr;
/*~PROTOBEG~ NOTICE */
public:
NOTICE (void);
void add (const char *str);
int format (char *buf, int maxsiz)const;
int print (FILE *fout, int indent)const;
~NOTICE (void);
/*~PROTOEND~ NOTICE */
};
class ACTION: public NOTICE{
/*~PROTOBEG~ ACTION */
/*~PROTOEND~ ACTION */
};
class COMPONENT: public PAIRES{
public:
XCONFIG *xconfig;
NOTICE *notice;
ACTION *action;
/*~PROTOBEG~ COMPONENT */
public:
COMPONENT (const char *manuf_id,
const char *model_id,
XCONFIG *_xconfig,
NOTICE *_notice,
ACTION *_action);
/*~PROTOEND~ COMPONENT */
};
#include <stdio.h>
class COMPONENTS{
XCONFIG **tb_xconfig;
int nb_xconfig;
int max_xconfig;
NOTICE **tb_notice;
int nb_notice;
int max_notice;
ACTION **tb_action;
int nb_action;
int max_action;
COMPONENT **tb_component;
int nb_component;
int max_component;
/*~PROTOBEG~ COMPONENTS */
public:
COMPONENTS (void);
void add (COMPONENT *comp);
void add (NOTICE *notice);
void add (XCONFIG *xconf);
COMPONENT *item (int no);
void print (FILE *fout);
int read (const char *fname);
int setmenu (char *tbopt2[]);
void sort (void);
virtual ~COMPONENTS (void);
/*~PROTOEND~ COMPONENTS */
};
#endif